package com.zmzncs.lmtc.module.customer.pojo.card;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.sql.Time;
import java.util.Date;
import java.util.List;

/**
 * <p>
 * 客户-会员卡
 * </p>
 *
 * @author 任建波
 * @since 2020-09-02
 */
@Data
public class CardDTO implements Serializable {

    private static final long serialVersionUID=1L;

    @ApiModelProperty(value = "id")
    private Long id;

    @ApiModelProperty(value = "客户id")
    private Long customerId;

    @ApiModelProperty(value = "卡类型（1：月卡，2：时长卡 ，4：充值，100：白天卡，101：夜间卡）")
    private Integer cardType;

    @ApiModelProperty(value = "会员卡状态（1：正常，2：禁用）")
    private Integer status;

    @ApiModelProperty(value = "禁用原因")
    private String prohibitionReasons;

    @ApiModelProperty(value = "余额")
    private BigDecimal cardBalance;

    @ApiModelProperty(value = "车牌号")
    private List<String> carNumberList;

    @ApiModelProperty(value = "车辆id")
    private Long carId;

    @ApiModelProperty(value = "车场月租车编号")
    private String parkMonthId;

    @ApiModelProperty(value = "停车场数量")
    private Integer parkCount;

    @ApiModelProperty(value = "车牌")
    private String carNumber;

    @ApiModelProperty(value = "停车场id")
    private Long parkId;

    @ApiModelProperty(value = "停车场名称")
    private String parkName;

    @ApiModelProperty(value = "经度")
    private String longitude;

    @ApiModelProperty(value = "维度")
    private String latitude;

    @ApiModelProperty(value = "开始时间")
    private Date startTime;

    @ApiModelProperty(value = "到期时间")
    private Date expireTime;

    @ApiModelProperty(value = "剩余天数")
    private Integer daysLeft;

    @ApiModelProperty(value = "剩余时长（小时）")
    private Long timeLeft;

    @ApiModelProperty(value = "规则版本号")
    private Integer ruleVersion;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "更新时间")
    private Date updateTime;

    @ApiModelProperty(value = "白天卡/夜间卡每天开始时间")
    private Time dayBeginTime;

    @ApiModelProperty(value = "白天卡/夜间卡每天结束时间")
    private Time dayEndTime;

    @ApiModelProperty(value = "停车场月租编号")
    private Integer parkMonthTypeCode;

}
